package com.mbyte.easy.admin.mapper;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.mbyte.easy.admin.entity.Audio;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author lp
 * @since 2019-12-12
 */
public interface AudioMapper extends BaseMapper<Audio> {

    /**
     * @Author 张雪
     * @Description 根据id查draftId 音频表
     * @Date 2019/12/12 0:06
     * @Param
     * @return
     **/
    Long selectDraftIdById(Long id);

    /**
     * @Author 张雪
     * @Description 分配操作后 对 音频表的更新
     * @Date 2019/12/16 16:02
     * @Param
     * @return
     **/
    void updateAudioStatusCode(@Param("draftId") Long draftId,@Param("statusCode") int statusAudioUnallot,@Param("groupId") String groupId);

    /**
    * @Author//宋昱
     * @Description //TODO
     * @Date 2019/12/16 21:10
            **/
    List<Long> selectIdByAudio(Long id);
    /**
    * @Author//songyu
     * @Description //根据组号查询
     * @Date 2019/12/20 16:35
            **/
    List<String> selectByGroupid(String groupid);
    /**
     * @Author//songyu
     * @Description //group表audio表查询
     * @Date 2019/12/20 20:34
     **/
    List<String> selectGroupid(Long allotNoid);

    /**
     * @Author//宋昱
     * @Description //根据组号查询状态
     * @Date 2019/12/20 23:45
     **/
    List<Integer> selectStatus(String groupid);
    /**
     * @Author//Songyu
     * @Description //TODO
     * @Date 2019/12/21 0:49
     **/
    String selectGroupidById(long id);
    /**
     * @Author//宋昱
     * @Description //TODO
     * @Date 2019/12/21 1:23
     **/
    List<Long> selectIdByGroupId(String groupId);

    List<String> lookTitle(String username);

    List<Audio> listPage(@Param("page") IPage<Audio> page, @Param(Constants.WRAPPER) QueryWrapper<Audio> queryWrapper);

    List<Audio> pageList(@Param("page") IPage<Audio> page, @Param(Constants.WRAPPER) QueryWrapper<Audio> queryWrapper);

}
